package com.hyou.springboot2.dao;

import java.util.List;

import com.hyou.springboot2.dto.pojo.SysDeptDO;

/**
 * SysDeptDao Dao接口定义类，(表t_sys_dept)
 *
 * @author FengChangshuo
 * @version 1.0.0 2018-11-01 13:39:02 初始创建
 */
public interface SysDeptDao {

    /**
     * 新增一条SysDeptDO记录
     * 
     * @param sysDept 要新增的SysDeptDO记录数据对象
     */
    void insert(SysDeptDO sysDept);
    
    /**
     * 批量新增SysDeptDO记录
     * 
     * @param sysDepts 要新增的SysDeptDO记录数据对象集合
     */
    void insertBatch(List<SysDeptDO> sysDepts);
    
    /**
     * 根据主键ID，删除一条SysDeptDO记录
     * 
     * @param id SysDeptDO的主键
     */
    void deleteByPrimaryKey(Long id);
    
    /**
     * 根据主键ID，批量删除多条SysDeptDO记录
     *
     * @param ids SysDeptDO的主键集合
     */
    void deleteBatchByPrimaryKeys(List<Long> ids);
    
    /**
     * 根据主键更新SysDeptDO数据记录
     * 
     * @param sysDept 要更新的SysDeptDO数据对象
     */
    void updateByPrimaryKeySelective(SysDeptDO sysDept);
    
    /**
     * 根据主键查询SysDeptDO数据对象
     * 
     * @param id SysDeptDO的主键
     * @return SysDeptDO数据对象
     */
    SysDeptDO selectByPrimaryKey(Long id);
    
    /**
     * <pre>
     * 根据数据对象sysDept查询符合条件的SysDeptDO结果集
     * 根据sysDept动态拼接查询条件。
     * </pre>
     *
     * @param sysDept 用于封装查询条件
     * @return SysDeptDO数据查询结果集
     */
    List<SysDeptDO> selectByConditions(SysDeptDO sysDept);
    
}
